草庐IT

【Python系列】eval 函数

全部标签

javascript - 动态创建异步函数

我想知道是否可以像这样动态创建一个异步函数:newFunction('awaitPromise.resolve()');预期,前面的代码抛出:UncaughtSyntaxError:awaitisonlyvalidinasyncfunction 最佳答案 是的,您可以获得对非全局的引用AsyncFunction动态创建异步函数的构造函数。您可以像这样获得对AsyncFunction构造函数的引用:constAsyncFunction=Object.getPrototypeOf(asyncfunction(){}).construct

javascript - Webpack babel-loader runtime : Module build failed: TypeError: this. setDynamic 不是函数

我正在尝试将babel-loader与babel-plugin-transform-runtime一起使用。我已按照以下说明进行操作:https://github.com/babel/babel-loader#babel-is-injecting-helpers-into-each-file-and-bloating-my-code相关代码:rules:[//the'transform-runtime'plugintellsbabeltorequiretheruntime//insteadofinliningit.{test:/\.js$/,exclude:/(node_modules

JavaScript:具有破坏性的箭头函数?

这个问题在这里已经有了答案:WherecanIgetinfoontheobjectparametersyntaxforJavaScriptfunctions?(1个回答)关闭4年前。关于MDN,下面的代码被用作如何使用箭头函数编写更短函数的示例。varmaterials=['Hydrogen','Helium','Lithium','Beryllium'];materials.map(function(material){returnmaterial.length;});//[8,6,7,9]materials.map((material)=>{returnmaterial.lengt

javascript - 函数组合的类型系统

如何为compose添加类型?问题基本上归结为为此编写类型:constcompose=(...funcs)=>x=>funcs.reduce((acc,func)=>func(acc),x);并使用它:compose(x=>x+1,x=>x*2)(3);在此示例中,compose的类型被推断为:constcompose:(...funcs:any[])=>(x:any)=>any这只是一堆any...compose有没有什么好的方法可以添加类型? 最佳答案 虽然不可能键入这样一个函数来接受任意数量的函数,但我们可以编写一个版本的co

javascript - 我的案例的函数声明和函数表达式之间的区别

有人请解释这里发生了什么。vary=1;if(functionf(){return'sometext';}){y+=typeoff;}console.log(y);//"1undefined"如果我把它改成函数表达式vary=1;if(a=functionf(){return'sometext';}){y+=typeofa;}console.log(y);//"1function" 最佳答案 if语句的条件始终是一个表达式。在第二种情况下,它是一个将全局(!)变量a设置为函数的赋值表达式,在第一种情况下,它只是一个函数表达式,并且该

javascript - 如何使用 AS3 运行 jQuery 函数

我正在尝试从AS3在我的HTML页面上运行一个jQuery函数。这是我的jQuery函数:functionloadImage(imageNumber){imageURL='';$("#imageBox").html(imageURL);}以下是我的Flash文件在HTML页面中的设置:最后...这是我的.swf文件中的AS3脚本:functiongotoImage1(e:MouseEvent):void{varjscommand:String="loadImage(1);"varlink:URLRequest=newURLRequest("javascript:"+jscommand+

javascript - 使用 Douglas Crockford 的函数继承在 Javascript 中调用基方法

基本上我如何使用下面的这种模式调用基本方法?varGS={};GS.baseClass=function(somedata){varthat={};that.data=somedata;//Baseclassmethodthat.someMethod=function(somedata){alert(somedata);};returnthat;};GS.derivedClass=function(somedata){varthat=GS.baseClass(somedata);//Overwritingbasemethodthat.someMethod=function(someda

Javascript - 获取函数(方法)的类所有者

有没有办法知道哪个类拥有一个函数?示例:functionglobalFunc(){//alertMyObject}functionMyObject(){}MyObject.prototype.test=function(){globalFunc();}varo=newMyObject();o.test();//alertMyObject现在我正在使用这个解决方法:functionglobalFunc(){alert(globalFunc.caller.__class__);}functionMyObject(){}MyObject.prototype.test=function(){g

javascript - 如何在JavaScript中不写 "eval"就执行 "eval"

这是交易,我们有一个很大的JS库需要压缩,但是YUIcompressor如果发现“eval”语句,它不会完全压缩代码,因为担心它会破坏其他东西。这很好,但是我们确切地知道什么正在被评估,所以我们不希望它变得保守,因为在MooToolsJSON.decode中有一个eval语句所以基本上问题是,是否有任何其他(可能是创造性的)方法来编写返回eval函数的表达式?我尝试了一些,但没有骰子:window['eval'](stuff);window['e'+'val'](stuff);//stuffrunsintheglobalscope,weneedlocalscopethis['eval'

javascript - 为什么 eval 不能访问 with 语句下的作用域变量?

为什么您不能在with语句下使用eval访问作用域变量?例如:(function(obj){with(obj){console.log(a);//printsoutobj.aeval("console.log(a)");//ReferenceError:aisnotdefined}})({a:"hello"})编辑:正如知识渊博的CMS所指出的,这似乎是一个浏览器错误(使用WebKit控制台的浏览器)。如果有人想知道我试图想出什么可憎的东西需要“邪恶的”eval和with--我想看看我是否可以让一个函数(用作回调)在另一个上下文中执行,而不是在它定义的上下文中执行。不,我可能(咳嗽)不